VIP Features
This document offers a comprehensive overview of the VIP Services API functions designed for advanced video processing, analytics, and avatar-based content generation.
Video Summary Llava
Utilize the video_process_llava method to generate a summary for a video.
| Parameter | Type | Required | Description |
|---|---|---|---|
| videoUrl | String | Yes | S3 URL of the input video file |
| instruction | String | Yes | Instruction/query to summarize |
# Initialize the SDK
videoSummary = sdk.video_process_llava(
videoUrl="https://aws.com/s3-videos/video.mp4",
instruction="Give me the summary of this video",
)
print(videoSummary)
Video Chat
Use the video_chat method to inquire about the source video (Source Type must be video).
| Parameter | Type | Required | Description |
|---|---|---|---|
| source_id | Integer | Yes | ID of the video-type source |
| question | String | Yes | Question to ask about the video |
# Initialize the SDK
video_chat = sdk.video_chat(source_id=113, question="What happened in this video?")
print(video_chat)
Video Search
Employ the search_in_video method to locate objects in the video (Source Type must be video).
| Parameter | Type | Required | Description |
|---|---|---|---|
| source_id | Integer | Yes | ID of the video-type source |
| search_text | String | Yes | Object to search in the video |
# Initialize the SDK
search_in_video = sdk.search_in_video(source_id=113, search_text="Red Car")
print(search_in_video)
Fetching Raw Analytics
Use the get_raw_analytics method to retrieve raw analytics for a source.
- For video source type, only source_id is required.
- For camera source type, it requires source_id, start_time, and end_time to obtain raw analytics.
- Time Format: "2025-05-18T15:32:38.105Z"
| Parameter | Type | Required | Description |
|---|---|---|---|
| source_id | Integer | Yes | ID of the source |
| start_time | String | Yes (camera) No (video) | Start time in ISO format |
| end_time | String | Yes (camera) No (video) | End time in ISO format |
# Initialize the SDK
getRawAnalytics = sdk.get_raw_analytics(source_id=2, start_time=startTime, end_time=endTime)
print(getRawAnalytics)
Fetching Analytics Report
Utilize the get_analytics_report method to obtain raw analytics in CSV format for a source.
- For video source type, only source_id is required.
- For camera source type, it requires source_id, start_time, and end_time to obtain raw analytics.
- Time Format: "2025-05-18T15:32:38.105Z"
- This method saves the CSV file.
| Parameter | Type | Required | Description |
|---|---|---|---|
| source_id | Integer | Yes | ID of the source |
| start_time | String | Yes (camera) No (video) | Start time in ISO format |
| end_time | String | Yes (camera) No (video) | End time in ISO format |
# Initialize the SDK
report = sdk.get_analytics_report(source_id=2, start_time=startTime, end_time=endTime)
print(report)
Fetching Analytics Report List
Use the get_analytics_report_list method to retrieve raw analytics in CSV format for multiple sources.
- It requires source_ids in a list, start_time, and end_time to obtain raw analytics.
- Time Format: "2025-05-18T15:32:38.105Z"
- This method saves the CSV file.
| Parameter | Type | Required | Description |
|---|---|---|---|
| source_id | List | Yes | IDs of the sources |
| start_time | String | Yes (camera) No (video) | Start time in ISO format |
| end_time | String | Yes (camera) No (video) | End time in ISO format |
# Initialize the SDK
reportsList = sdk.get_analytics_report_list(source_ids=[125, 239], start_time=startTime, end_time=endTime)
print(reportsList)
Video Library
Use the video_library method to access event videos associated with an analytics ID or source.
| Parameter | Type | Default | Description |
|---|---|---|---|
| analytic_ids | List | Required | List of analytics IDs to fetch related videos |
| zone_id | Integer | Optional | Filter results by zone ID |
| source_id | Integer | Optional | Filter results by source ID |
| page_number | Integer | 0 | Pagination - page number |
| page_size | Integer | 6 | Pagination - items per page |
# Initialize the SDK
video_lib = sdk.video_library(
analytic_ids=[42],
source_id=139
)
print(video_lib)
Fetching Avatars
Fetching Avatars
Utilize the get_avatar_list method to retrieve a list of avatars for generating agent videos.
{get_agents.map((agent, idx) => (
<div key={idx}>
<p>Name: {agent.name}, Url: {agent.avatarUri}</p>
</div>
))}
### Generate Videos
Employ the generate\_video method to create an avatar video based on the specified text.
|**Parameter**|**Type**|**Required**|**Description**|
| :-: | :-: | :-: | :-: |
|name|String|Yes|Name/title of the video|
|gender|String|Yes|Avatar gender: "male" or "female"|
|language|String|Yes|Language for speech (e.g., "English", "Hindi")|
|text|String|Yes|Context for the avatar to speak|
|avatar\_url|String|Yes|URL to the avatar image/video|
\# Initialize the SDK
gevVideo = sdk.generate\_video(
` `name="Test SDK",
` `gender="female",
` `language="Korean",
` `text="Hello, this is a test.",
` `avatar\_url="https://cdn-dev.eizen.ai/6b9fb1f5-a859-4883-b159-941908bbe886.png"
)
print(gevVideo)
### Generated Video Status
Use the check\_generation\_video\_status method to verify the status of the avatar video generation.
|**Parameter**|**Type**|**Required**|**Description**|
| :-: | :-: | :-: | :-: |
|video\_id|Integer|Yes|ID of the generating video|
\# Initialize the SDK
checkStatus = sdk.check\_generation\_video\_status(video\_id=124)
print(checkStatus)
#### Notes
- Ensure that the SDK is initialized properly with a valid User token before invoking these methods.
- All returned data is typically formatted as a dictionary or list.